/**
 * [Copyright 2019  zt 分布式代码生成工具
 * <p>
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 * <p>
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 * <p>
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

package com.base.test.rabbitmq.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;


/**
 * mq生产者消息表
 * @author qiaodong
 * @since 2020-08-27
 */
@Data
@ApiModel(value = "mq生产者消息表")
public class MqSendResp implements Serializable {
    private static final long serialVersionUID = 1L;

	@ApiModelProperty(value = "主键ID")
	@JsonProperty("id")
	private Long id;

	@ApiModelProperty(value = "消息ID")
	@JsonProperty("msg_id")
	private String msgId;

	@ApiModelProperty(value = "交换器")
	@JsonProperty("exchange")
	private String exchange;

	@ApiModelProperty(value = "路由键")
	@JsonProperty("routing_key")
	private String routingKey;

	@ApiModelProperty(value = "消息内容json格式")
	@JsonProperty("msg_json")
	private String msgJson;

	@ApiModelProperty(value = "失败类型 1：mq连接失败 2:投递交换器失败 3:投递队列失败")
	@JsonProperty("fail_type")
	private Integer failType;

	@ApiModelProperty(value = "状态 1：待定 2：失败 3：成功")
	@JsonProperty("status")
	private Integer status;

	@ApiModelProperty(value = "应用代码 BSC,FMS,OWMS")
	@JsonProperty("app_code")
	private String appCode;

	@ApiModelProperty(value = "业务场景")
	@JsonProperty("business_type")
	private String businessType;

	@ApiModelProperty(value = "备注")
	@JsonProperty("remark")
	private String remark;

	@ApiModelProperty(value = "重试次数")
	@JsonProperty("retry_count")
	private Integer retryCount;

	@ApiModelProperty(value = "更新时间")
	@JsonProperty("update_time")
	private Date updateTime;

	@ApiModelProperty(value = "创建时间")
	@JsonProperty("create_time")
	private Date createTime;

}